#ifndef CMELEEENEMY_H_
#define CMELEEENEMY_H_
#include "CEnemy.h"
#include "../Animation/CAnimation.h"
#include "../Core/IListener.h"
#include <vector>
using std::vector;

enum EMeleeEnemies { ENEMY_FIGHTER, ENEMY_CLERIC, ENEMY_DWARF };

class CMeleeEnemy : public CBaseEnemy
{
private:
	bool punching;

	unsigned int enemyType;
	
	float scale;
/*
	float bucket;
	bool flicker;
	float flickbucket;
	int counter;
	bool m_bIsPaid;
	float xspeed;
	float yspeed;
*/
	vector<CAnimation> vAnimation;
	int CurrAnimation;
	float curVelocity;

protected:

public:
	CMeleeEnemy(unsigned int type);
	//CMeleeEnemy(int i);
	~CMeleeEnemy();

	//CMeleeEnemy(CMeleeEnemy& copy);

	void Attack();
	void HurtMe();
	void Update( float fElapsedTime);
	void Render();
	bool Load( const char* AnimInfo);

	int GetCurAnimation() { return CurrAnimation; }
	void SetCurAnimation(int newState) { CurrAnimation = newState; }
	//bool GetPaid()	{ return m_bIsPaid; }
	//bool GetFlicker()	{return flicker;}

	//void SetPaid(bool yah)	{m_bIsPaid = yah; }
	//void SetFlicker(bool yah)	{flicker = yah; }
	
	RECT GetAttackRect();
	RECT GetHealthRect();
	//void SetFB(float f) { flickbucket = f; }

	bool CheckCollision( IBaseInterface* pBase );
	void HandleEvent(CEvent* pEvent);
};

#endif